<?php
/*
Autor: Jonathan Vindas Abarca
Fecha: 10/12/2012
Descripción: Este archivo contiene la declaración de la clase controladora de companias.
Bitacora de modificaciones:
<
    Autor: 
    Fecha: 
    Descripción: 
>
*/

    function agregarCompaniasControlador() 
    {        
        require '../modelos/companiasModelo.php';        
        //require_once 'dataControlador.php';    
        $bandera = false;  
        require_once '../FirePHPCore/FirePHP.class.php';
        $firephp = FirePHP::getInstance(true);                        
        try 
        {                        
            if ($_POST['hddAccion'] == 'agregarCompania') 
            {
                if(empty($_POST['txtNombreCompania'])==true){
                    $bandera='SinNombreCompania';
                    
                }else{
                if(encontrarCompaniaDuplicada($_POST['txtCodigoCompania'])==false)
                {                                
                    agregarCompanias($_POST['txtCodigoCompania'], $_POST['txtNombreCompania']);
                    $bandera='Agrega';                    
                    $firephp->log($bandera, 'Resultado Bandera');
                }
                else
                {
                    $bandera='ExisteCompania';
                    $firephp->log($bandera, 'Resultado Bandera');
                }}
            }
            if ($_POST['hddAccion'] == 'modificarCompania') 
            {
                if(encontrarCompaniaDuplicada($_POST['hddCodigoCompania'])==true)
                {                                 
                    modificarCompaniaModelo($_POST['hddCodigoCompania'], $_POST['txtNombreCompania']);
                    $bandera='Modifica';                    
                }                
            }
        
            mensajeConfirmacionCompanias($bandera);
            $items = buscarCompanias();        
            $total_registros =sizeof($items);                    
            require 'FacturasExportacion/listarCompanias.php';
        } 
        catch (Exception $e) 
        {
            echo 'Excepción capturada: ', $e->getMessage(), "\n";
        }
    }
    
    function eliminarCompanias() 
    {
        require_once 'dataControlador.php';
        require '../modelos/companiasModelo.php';
        require_once('FirePHPCore/FirePHP.class.php');
        $firephp = FirePHP::getInstance(true);                                
          
        if(validarPermisos('eliminarCompaniaModelo'))
        {
            if(dependenciaClientesCompanias($_GET['codigoCompania'])==false)
            {
                eliminarCompaniaModelo($_GET['codigoCompania']);
                $bandera='Elimina';                                      
            }
            else
            {
                $bandera='ClientesAsociados';                      
            }                               
        }
        else
        {
            $bandera='SinPermisos';            
        }       
        listarCompanias();
        mensajeConfirmacionCompanias($bandera);
    }

    function listarCompanias() 
    {           
        require_once '../modelos/companiasModelo.php';     
        require_once 'dataControlador.php';        
        $mensaje='listarCompania';        
        if(validarPermisos('buscarCompanias'))
        {            
            $items = buscarCompanias();        
            $total_registros =sizeof($items);                    
            require 'FacturasExportacion/listarCompanias.php';         
        }        
        else
        {
            $items = null;                    
            $total_registros =sizeof($items);                    
            require 'FacturasExportacion/listarCompanias.php';        
            mensajeConfirmacionCompanias('SinPermisos'); 
        }        
        /*
        require_once('FirePHPCore/FirePHP.class.php');        
        require_once '../modelos/companiasModelo.php';                
        require_once 'dataControlador.php';                
        $firephp = FirePHP::getInstance(true);       
        $items = buscarCompanias();        
        $firephp->log($items, "companias");
        $total_registros =sizeof($items);                    
        require 'FacturasExportacion/listarCompanias.php';        */
    }
    
    function mensajeConfirmacionCompanias($bandera) 
    {                
        try 
        {
            if($bandera=='Agrega')
            {
                ?>
                <script type="text/javascript">                
                alert("Se agrego la compañia satisfactoriamente.");
                </script>
                <?php
            }
            elseif ($bandera=='Modifica') 
            {            
                ?>
                <script type="text/javascript">                
                alert("Se modifico el compañia satisfactoriamente.");
                </script>
                <?php        
            }
            elseif ($bandera=='Elimina') 
            {        
                ?>
                <script type="text/javascript">
                    alert("Se elimino la compañia satisfactoriamente.");                
                </script>
                <?php
            }
            elseif ($bandera=='ExisteCompania') 
            {        
                ?>
                <script type="text/javascript">
                    alert("Esta compañia ya existe");                
                </script>
                <?php    
            }
            elseif ($bandera=='SinPermisos') 
            {
                ?>
                <script type="text/javascript">
                    alert("Su usuario no posee permisos para esta acción.");                                
                </script>
                <?php
            }
            elseif ($bandera=='ClientesAsociados') 
            {
                ?>
                <script type="text/javascript">
                    alert("Su usuario no posee permisos para esta acción.");                                
                </script>
                <?php
            }
            elseif ($bandera=='SinNombreCompania') 
            {
                ?>
                <script type="text/javascript">
                    alert("El nombre de la compañia no fue ingresado correctamente.");                                
                </script>
                <?php
            }
        }
        catch (Exception $e) 
        {
            echo 'Excepción capturada: ',  $e->getMessage(), "\n";
        }
    }
    
    function modificarCompanias() 
    {
        require_once 'dataControlador.php';
        require '../modelos/companiasModelo.php';        
        require_once('FirePHPCore/FirePHP.class.php');                                     
        $firephp = FirePHP::getInstance(true);
        if(validarPermisos('modificarCompaniaModelo'))
        {        
            $codigoCompania = $_POST['hddCodigoCompania'];
            $nombreCompania = $_POST['hddNombreCompania'];                                    
            $firephp->log($nombreCompania);
            $accion = 'modificarCompania';        
            require 'FacturasExportacion/agregarCompania.php';                                                                             
        }
        else
        {   
            $items = buscarCompanias();                    
            $total_registros =sizeof($items);                    
            require 'FacturasExportacion/listarCompanias.php';        
            mensajeConfirmacionCompanias('SinPermisos');                  
        }                                 
    }               
    
    function direccionarAgregarCompania()
    {        
        require_once 'dataControlador.php';        
        require '../modelos/companiasModelo.php';                       
        if(validarPermisos('agregarCompanias'))
        {
            $accion='agregarCompania';
            require 'FacturasExportacion/agregarCompania.php';      
        }        
        else
        {            
            $items = buscarCompanias();                    
            $total_registros =sizeof($items);                    
            require 'FacturasExportacion/listarCompanias.php';        
            mensajeConfirmacionCompanias('SinPermisos'); 
        } 
        /*
        $accion='agregarCompania';
        require 'FacturasExportacion/agregarCompania.php';       */
    }
?>
